package com.example.demo.model.form;

import com.example.demo.model.core.Update;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.io.Serializable;

@Setter
@Getter
@NoArgsConstructor
@Schema(description = "权限表单对象")
public class PermissionForm implements Serializable {
    @NotEmpty(message = "id不能为空", groups = {Update.class})
    @Schema(description = "权限ID")
    private String id;
    @Schema(description = "父级权限ID")
    private String pid;
    @Schema(description = "是否总是显示")
    private Integer alwaysShow;
    @Schema(description = "是否可见")
    private Integer visible;
    @Schema(description = "权限类型")
    private Integer type;
    @Schema(description = "权限名称")
    private String name;
    @Schema(description = "权限标识")
    private String perm;
    @Schema(description = "权限图标")
    private String icon;
    @Schema(description = "组件路径")
    private String component;
    @Schema(description = "路由路径")
    private String routePath;
    @Schema(description = "路由名称")
    private String routeName;
    @Schema(description = "排序")
    private Integer ordernum;
}
